home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / OEMNSVIR.IN_ / oemnsvir.inf
INI File  |  1996-07-12  |  23KB  |  584 lines

  1. [Identification]
  2.     OptionType = NetService
  3. [Options]
  4.     IPRIP
  5. [FileConstants]
  6. Manufacturer        = "Microsoft"
  7. ProductMajorVersion = "4"
  8. ProductMinorVersion = "0"
  9. SoftwareType        = "service"
  10. ProductVersion      = $(ProductMajorVersion)"."$(ProductMinorVersion)
  11. ProductOpSupport    = 132 
  12. ProductIPRIPName        = "IpRip"
  13. ProductIPRIPImagePath   = "%SystemRoot%\System32\router.exe"
  14. ProductIPRIPEventFile   = "%SystemRoot%\System32\iprip.dll"
  15. ProductSoftwareConfigDLL = tcpcfg.dll
  16. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\IpRip\CurrentVersion"
  17. [GeneralConstants]
  18. UtilityInf       = "UTILITY.INF"
  19. subroutineinf    = "SUBROUTN.INF"
  20. Exit_Code        = 0
  21. BillboardVisible = 0
  22. from      = ""
  23. to        = ""
  24. ExitCodeOk     = 0
  25. ExitCodeCancel = 1
  26. ExitCodeFatal  = 2
  27. KeyNull         = ""
  28. MAXIMUM_ALLOWED   = 33554432
  29. SERVICE_NO_CHANGE = 4294967295
  30. RegistryErrorIndex = NO_ERROR
  31. KeyProduct      = ""
  32. KeyParameters   = ""
  33. TRUE            = 1
  34. FALSE           = 0
  35. NoTitle         = 0
  36. ExitState   = "Active"
  37. OldVersionExisted = $(FALSE)
  38. [date]
  39.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  40. [Identify]
  41.     read-syms Identification
  42.     set Status     = STATUS_SUCCESSFUL
  43.     set Identifier = $(OptionType)
  44.     set Media      = #("Source Media Descriptions", 1, 1)
  45.     Return $(Status) $(Identifier) $(Media)
  46. [ReturnOptions]
  47.     set Status        = STATUS_FAILED
  48.     set OptionList     = {}
  49.     set OptionTextList = {}
  50.     set LanguageList = ^(LanguagesSupported, 1)
  51.     Ifcontains(i) $($0) in $(LanguageList)
  52.         goto returnoptions
  53.     else
  54.         set Status = STATUS_NOLANGUAGE
  55.         goto finish_ReturnOptions
  56.     endif
  57. returnoptions = +
  58.     ifstr(i) $(!STF_PRODUCT) != "WINNT"
  59.         set OptionList     = ^(Options, 1)
  60.         set OptionTextList = ^(OptionsText$($0), 1)
  61.     endif
  62.     set Status         = STATUS_SUCCESSFUL
  63. finish_ReturnOptions = +
  64.     Return $(Status) $(OptionList) $(OptionTextList)
  65. [InstallOption]
  66.     set Option   = $($1)
  67.     set SrcDir   = $($2)
  68.     set AddCopy  = $($3)
  69.     set DoCopy   = $($4)
  70.     set DoConfig = $($5)
  71.     set InstallFrom = $($6)
  72.     ifstr(i) $(InstallFrom) == ""
  73.         set InstallFrom = "IPRIP"
  74.     endif
  75.     set LanguageList = ^(LanguagesSupported, 1)
  76.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  77.         Return STATUS_NOLANGUAGE
  78.     endif
  79.     Debug-Output "OEMNSVIR.INF: STF_CWDIR is: "$(!STF_CWDIR)
  80.     Debug-Output "OEMNSVIR.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  81.     set-subst LF = "\n"
  82.     read-syms GeneralConstants
  83.     read-syms FileConstants
  84.     read-syms DialogConstants$(!STF_LANGUAGE)
  85.     ifstr(i) $(!NTN_Origination) == "NCPA"
  86.         set Continue = $(OK)
  87.     endif
  88.     read-syms FileConstants$(!STF_LANGUAGE)
  89.     detect date
  90.     set-title  $(FunctionTitle)
  91.     set to   = Begin
  92.     set from = Begin
  93.     set CommonStatus = STATUS_SUCCESSFUL
  94.     EndWait
  95. Begin = +
  96.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  97.         set StartLabel = removeadapter
  98.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  99.         set StartLabel = UpgradeSoftware
  100.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  101.         Debug-Output "Cannot configure the software."
  102.         Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  103.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  104.             Debug-Output "ShellCode error: cannot get an error string."
  105.             goto ShellCodeError
  106.         endif
  107.         set Error = $($R0)
  108.         set from = end
  109.         set to = end
  110.         goto nonfatalinfo
  111.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  112.         set StartLabel = bindingadapter
  113.     else
  114.         set StartLabel = installadapter
  115.         set OEM_ABANDON_SOFTWARE = {}
  116.         set OEM_ABANDON_OPTIONS = {}
  117.     endif
  118.     set from = $(fatal)
  119.     set to = $(fatal)
  120.     goto $(StartLabel)
  121. installadapter = +
  122.     set OEM_ABANDON_ON  = TRUE
  123.     StartWait
  124.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeySoftware
  125.     Ifstr(i) $(KeySoftware) == $(KeyNull)
  126.         ifstr(i) $(!NTN_InstallMode) == "install"
  127.             Ifstr(i) $(DoCopy) == "YES"
  128.                 Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  129.                 Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  130.                    Goto ShellCodeError
  131.                 Else-Ifstr(i) $($R0) == STATUS_FAILED
  132.                    Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  133.                    ifint $($ShellCode) != $(!SHELL_CODE_OK)
  134.                       goto ShellCodeError
  135.                    endif
  136.                    set Error = $($R0)
  137.                    Goto fatal
  138.                 Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  139.                    Goto successful
  140.                 Endif
  141.                 Set SrcDir = $($R1)
  142.             Endif
  143.             OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\TCPIP" $(MAXIMUM_ALLOWED) BS_KeyServices
  144.             Ifstr $(BS_KeyServices) == $(KeyNull)
  145.                     Shell "oemnxpip.inf" ReturnOptions $(!STF_LANGUAGE)
  146.                     ifstr(i) $($R0) == STATUS_SUCCESSFUL
  147.                         set OldStfSrcDir = $(!STF_SRCDIR_OVERRIDE)
  148.                         set !STF_SRCDIR_OVERRIDE = ""
  149.                         Shell "oemnxpip.inf" InstallOption $(!STF_LANGUAGE), *($($R1),1),+
  150.                             $(SrcDir), $(AddCopy), "NO", $(DoConfig)
  151.                         set !STF_SRCDIR_OVERRIDE = $(OldStfSrcDir)
  152.                     else
  153.                         Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL", $(InstallNWLINKFirst)
  154.                         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  155.                             goto ShellCodeError
  156.                         endif
  157.                         goto end
  158.                     endif
  159.             else
  160.                  CloseRegKey $(BS_KeyServices)
  161.             endif
  162.             Debug-Output "OEMNSVIR.INF: installadapter: installing [Install-Option]"
  163.             install "Install-Option"
  164.             ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  165.                Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  166.                ifint $($ShellCode) != $(!SHELL_CODE_OK)
  167.                    goto ShellCodeError
  168.                endif
  169.                set Error = $($R0)
  170.                goto fatal
  171.             endif
  172.         endif
  173.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\IPRIP" $(MAXIMUM_ALLOWED) KeyService
  174.         Ifstr(i) $(KeyService) == $(KeyNull)
  175.             Shell $(UtilityInf), AddSoftwareComponent, "Microsoft", +
  176.                 $(ProductIPRIPName), +
  177.                 $(ProductIPRIPName), +
  178.                 $(ProductIPRIPDisplayName), +
  179.                 $(STF_CONTEXTINFNAME),+
  180.                 $(ProductIPRIPImagePath), +
  181.                 "autoserviceshare" , "", {"TCPIP"}, "", $(ProductIPRIPEventFile)
  182.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  183.                 Debug-Output "OEMNSVIR.INF: ShellCode error"
  184.                 return STATUS_FAILED
  185.             endif
  186.             set RegistryErrorIndex = $($R0)
  187.             set ProductKey = $($R1)
  188.             set RuleKey = $($R2)
  189.             CloseRegKey $($R3)
  190.             set ParamKey = $($R4)
  191.             CloseRegKey $($R5)
  192.             Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  193.                 EndWait
  194.                 Debug-Output "OEMNSVIR.INF: Registry Error "$(RegistryErrorIndex)
  195.                 CloseRegKey $($R1)
  196.                 CloseRegKey $($R2)
  197.                 CloseRegKey $($R4)
  198.                 goto fatalregistry
  199.             endif
  200.             set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  201.                                {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  202.                                {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductIPRIPTitle)},+
  203.                                {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductIPRIPDescription)},+
  204.                                {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  205.                                {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}, +
  206.                                {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)} +
  207.                                {Review,$(NoTitle),$(!REG_VT_DWORD),1)}}
  208.             Shell  $(UtilityInf), AddValueList, $(ProductKey), $(NewValueList)
  209.             CloseRegKey $(ProductKey)
  210.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  211.                 Debug-Output "utility.INF: ShellCode error. Cannot add IPRIP router service"
  212.                 goto ShellCodeError
  213.             endif
  214.             set RegistryErrorIndex = $($R0)
  215.             Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  216.                 EndWait
  217.                 Debug-Output "OEMNSVIR.INF:  error: create service"
  218.                 set Status = STATUS_FAILED
  219.             endif
  220.             set NewValueList = +
  221.              {{class, $(NoTitle), $(!REG_VT_SZ), "ipripRouter basic"},+
  222.              {type,$(NoTitle),$(!REG_VT_SZ),"iprip ipripRouter"},+
  223.              {InfOption,$(NoTitle),$(!REG_VT_SZ),"IPRIP"}, +
  224.              {bindform,$(NoTitle),$(!REG_VT_SZ),"""iprip"" yes yes simple"}, +
  225.              {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),+
  226.               {"ipripRouter ndisDriver non non 100"}}}
  227.             Shell  $(UtilityInf), AddValueList, $(RuleKey), $(NewValueList)
  228.             CloseRegKey $(RuleKey)
  229.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  230.                 Debug-Output "utility.INF: ShellCode error. Cannot add IPRIP service"
  231.                 goto ShellCodeError
  232.             endif
  233.             set RegistryErrorIndex = $($R0)
  234.             Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  235.                 EndWait
  236.                 Debug-Output "OEMNSVIR.INF: Registry error: create service"
  237.                 set Status = STATUS_FAILED
  238.             endif
  239.             set Result = 0
  240.             ifstr(i) $(!STF_GUI_UNATTENDED) != "YES"
  241.                LoadLibrary "x" $(!STF_CWDDIR)$(ProductSoftwareConfigDLL) !hDialogDLL
  242.                    ifstr(i) $(!hDialogDLL) != NULL
  243.                        set FLibraryErrCtl = 1
  244.                        LibraryProcedure ResultList, $(!hDialogDLL), TcpEnableRipSilentMode
  245.                        set FLibraryErrCtl = 0
  246.                        set Result = *($(ResultList), 1)
  247.                    endif
  248.             endif
  249.             SetRegValue $(ParamKey) {SilentRip, $(NoTitle), $(!REG_VT_DWORD), $(Result)}
  250.             CloseRegKey $(ParamKey)
  251.         endif
  252.     Else
  253.         Debug-Output "OEMNSVIR.INF: already installed InstallFrom = "$(InstallFrom)
  254.         GetRegValue $(KeySoftware) "MajorVersion" VersionInfo
  255.         set VersionMajor = *($(VersionInfo), 4)
  256.         GetRegValue $(KeySoftware) "MinorVersion" VersionInfo
  257.         set VersionMinor = *($(VersionInfo), 4)
  258.         set InstalledVersion = $(VersionMajor)"."$(VersionMinor)
  259.         ifstr(i) $(InstallFrom) == "IPRIP"
  260.             read-syms VerExists$(!STF_LANGUAGE)
  261.             set Text = $(Product$(Option)Title)$(Ver)$(ProductVersion)+
  262.                        $(Text1)
  263.             Shell $(subroutineinf), SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(Text)
  264.             Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  265.                 Goto fatal
  266.             Else-Ifstr(i) $($R0) == STATUS_FAILED
  267.                 Goto fatal
  268.             Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  269.                 Goto end
  270.             Endif
  271.         else
  272.             Shell "" AddIPRIPUsed $(InstallFrom)
  273.         endif
  274.         goto end
  275.     EndIf
  276.     Ifstr(i) $(KeySoftware) != $(KeyNull)
  277.         CloseRegKey $(KeySoftware)
  278.     endif
  279.     Shell "" AddIPRIPUsed $(InstallFrom)
  280.     OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Services\Tcpip\Parameters" $(MAXIMUM_ALLOWED) KeyTcpParameter
  281.     ifstr(i) $(KeyTcpParameter) != ""
  282.         GetRegValue $(KeyTcpParameter) "IPEnableRouter" RouterInfo
  283.         ifint *($(RouterInfo),4) == 0
  284.             SetRegValue $(KeyTcpParameter) {"IPEnableRouter", $(NoTitle), $(!REG_VT_DWORD), 1}
  285.         endif
  286.     endif
  287.     ifstr(i) $(!STF_GUI_UNATTENDED) != "YES"
  288.         LoadLibrary "x" $(!STF_CWDDIR)$(ProductSoftwareConfigDLL) !hDialogDLL
  289.         ifstr(i) $(!hDialogDLL) != NULL
  290.             set FLibraryErrCtl = 1
  291.             LibraryProcedure ResultList, $(!hDialogDLL), TcpCheckAdaptersForDHCP
  292.             set FLibraryErrCtl = 0
  293.         endif
  294.     endif
  295.     goto successful
  296. configureadapter = +
  297.     goto end
  298. bindingadapter =+
  299.     goto end     
  300. removeadapter = +
  301.     set IpRipKeyName = "System\CurrentControlSet\Services\IpRip"
  302.     set ProductIPRIPName  = "IpRip"
  303.     Shell "" RemoveIPRIPUsed $(InstallFrom)
  304.     OpenRegKey $(!REG_H_LOCAL) "" $(IpRipKeyName) $(MAXIMUM_ALLOWED) BS_KeyServices
  305.     Ifstr $(BS_KeyServices) != $(KeyNull)
  306.         CloseRegKey $(BS_KeyServices)
  307.         Shell "" NumOfUsed
  308.         set NumOfUsed = $($R0)
  309.         ifint $(NumOfUsed) == 1
  310.             Shell "" FindUsed "IPRIP"
  311.             ifstr(i) $($R0) == TRUE
  312.                 set NumOfUsed = 0
  313.             endif
  314.         endif
  315.         ifint $(NumOfUsed) == 0
  316.             Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), $(ProductIPRIPName)
  317.         else
  318.             ifstr(i) $(InstallFrom) == "IPRIP"
  319.                 read-syms InUse$(!STF_LANGUAGE)
  320.                 set from = end
  321.                 set to = end
  322.                 goto warning
  323.             endif
  324.         endif
  325.     endif
  326.     goto end
  327. UpgradeSoftware = +
  328.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  329.     Ifstr(i) $(KeyProduct) != $(KeyNull)
  330.         install "Install-Update"
  331.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  332.             goto fatal
  333.         endif
  334.         SetRegValue $(KeyProduct) {SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)}
  335.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  336.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  337.         SetRegValue $(KeyProduct) {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductIPRIPDescription)}
  338.         SetRegValue $(KeyProduct) {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}
  339.         LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, "IpRip", $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), $(SERVICE_NO_CHANGE), "%SystemRoot%\System32\router.exe", "", "", "", "", ""
  340.         CloseRegKey $(KeyProduct)
  341.     endif
  342.     goto end
  343. successful = +
  344.     goto end
  345. infomsg =+
  346.    read-syms InfoDlg
  347.    ui start "Warning"
  348.    set CommonStatus = STATUS_USERCANCEL
  349.    goto end
  350. warning = +
  351.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  352.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  353.         goto ShellCodeError
  354.     endif
  355.     ifstr(i) $($R1) == "OK"
  356.         goto $(to)
  357.     else-ifstr(i) $($R1) == "CANCEL"
  358.         goto $(from)
  359.     else
  360.         goto "end"
  361.     endif
  362. nonfatalinfo = +
  363.     Set CommonStatus = STATUS_USERCANCEL
  364.     Set Severity = STATUS
  365.     goto nonfatalmsg
  366. nonfatal = +
  367.     Set Severity = NONFATAL
  368.     goto nonfatalmsg
  369. nonfatalmsg = +
  370.     ifstr(i) $(Error) == ""
  371.         Set Severity = NONFATAL
  372.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  373.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  374.             goto ShellCodeError
  375.         endif
  376.         set Error = $($R0)
  377.     endif
  378.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  379.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  380.         goto ShellCodeError
  381.     endif
  382.     ifstr(i) $($R1) == "OK"
  383.         goto $(from)
  384.     else
  385.         goto "end"
  386.     endif
  387. fatalregistry = +
  388.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  389.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  390.         goto ShellCodeError
  391.     endif
  392.     set Error = $($R0)
  393.     goto fatal
  394. fatal = +
  395.     ifstr(i) $(Error) == ""
  396.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  397.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  398.             goto ShellCodeError
  399.         endif
  400.         set Error = $($R0)
  401.     endif
  402.     Ifint $(BillboardVisible) != 0
  403.         Shell "subroutn.inf" PopBillboard
  404.         Set BillboardVisible = 0
  405.     Endif
  406.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  407.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  408.         goto ShellCodeError
  409.     endif
  410.    goto setfailed
  411. ShellCodeError = +
  412.     set DlgType      = "MessageBox"
  413.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  414.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  415.     set STF_MB_TYPE  = 1
  416.     set STF_MB_ICON  = 3
  417.     set STF_MB_DEF   = 1
  418.     ui start "Error Message"
  419.     goto setfailed
  420. setfailed = +
  421.     set CommonStatus = STATUS_FAILED
  422.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  423.         set OEM_ABANDON_ON = FALSE
  424.         goto removeadapter
  425.     endif
  426.     goto end
  427. end = +
  428.     goto term
  429. term = +
  430.     Return $(CommonStatus)
  431. [GetFilesSize]
  432.     set FileSizeList = ^(Files-TCPPRINT,3)
  433.     set TotalSize = 0
  434.     ForListDo $(FileSizeList)
  435.         Split-String $($) "=" SplitString
  436.         set Size = *($(SplitString),3)
  437.         set-add TotalSize = $(TotalSize) $(Size)
  438.     EndForListDo
  439.     set-div SizeInK = $(TotalSize) 1024
  440.     return $(SizeInK)
  441. [Install-Option]
  442.     set STF_VITAL = NO
  443.     ifstr(i) $(AddCopy) == "YES"
  444.         AddSectionFilesToCopyList Files-IPRIP $(SrcDir) $(!STF_WINDOWSSYSPATH)
  445.     endif
  446.     ifstr(i) $(DoCopy) == "YES"
  447.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  448.        CopyFilesInCopyList
  449.     endif
  450.     ifstr(i) $(DoConfig) == "YES"
  451.     endif
  452.     Exit
  453. [Install-Update]
  454.    set STF_VITAL        = NO
  455.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  456.    AddSectionFilesToCopyList Files-IPRIP $(SrcDir) $(!STF_WINDOWSSYSPATH)
  457.    Exit
  458. [AddIPRIPUsed]
  459.     read-syms GeneralConstants
  460.     read-syms FileConstants
  461.     read-syms FileConstants$(!STF_LANGUAGE)
  462.     set KeyName = $($0)
  463.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyService
  464.     ifstr(i) $(KeyService) != ""
  465.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName)"\UseRef" $(MAXIMUM_ALLOWED) KeyUseRef
  466.         ifstr(i) $(KeyUseRef) == ""
  467.             CreateRegKey $(KeyService) {"UseRef",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyUseRef
  468.         endif
  469.         ifstr(i) $(KeyUseRef) != ""
  470.             SetRegValue $(KeyUseRef) {$(KeyName),$(NoTitle),$(!REG_VT_SZ),"1"}
  471.             CloseRegKey $(KeyUseRef)
  472.         endif
  473.         CloseRegKey $(KeyService)
  474.     else
  475.     endif
  476.     return
  477. [RemoveIPRIPUsed]
  478.     read-syms GeneralConstants
  479.     read-syms FileConstants
  480.     read-syms FileConstants$(!STF_LANGUAGE)
  481.     set KeyName = $($0)
  482.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyService
  483.     ifstr(i) $(KeyService) != ""
  484.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName)"\UseRef" $(MAXIMUM_ALLOWED) KeyUseRef
  485.         ifstr(i) $(KeyUseRef) == ""
  486.             CreateRegKey $(KeyService) {"UseRef",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyUseRef
  487.         endif
  488.         ifstr(i) $(KeyUseRef) != ""
  489.             DeleteRegValue $(KeyUseRef) $(KeyName)
  490.             CloseRegKey $(KeyUseRef)
  491.         endif
  492.         CloseRegKey $(KeyService)
  493.     else
  494.     endif
  495.     return
  496. [NumOfUsed]
  497.     read-syms GeneralConstants
  498.     read-syms FileConstants
  499.     read-syms FileConstants$(!STF_LANGUAGE)
  500.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyService
  501.     ifstr(i) $(KeyService) != ""
  502.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName)"\UseRef" $(MAXIMUM_ALLOWED) KeyUseRef
  503.         ifstr(i) $(KeyUseRef) == ""
  504.             CreateRegKey $(KeyService) {"UseRef",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyUseRef
  505.         endif
  506.         ifstr(i) $(KeyUseRef) != ""
  507.             EnumRegValue $(KeyUseRef) UsageList
  508.             set Num = 0
  509.             ForListDo $(UsageList)
  510.                 set-add Num = $(Num), 1
  511.             EndForListDo
  512.             CloseRegKey $(KeyUseRef)
  513.         endif
  514.         CloseRegKey $(KeyService)
  515.     else
  516.     endif
  517.     return $(Num)
  518. [FindUsed]
  519.     read-syms GeneralConstants
  520.     read-syms FileConstants
  521.     read-syms FileConstants$(!STF_LANGUAGE)
  522.     set KeyName = $($0)
  523.     set Find = FALSE
  524.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyService
  525.     ifstr(i) $(KeyService) != ""
  526.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName)"\UseRef" $(MAXIMUM_ALLOWED) KeyUseRef
  527.         ifstr(i) $(KeyUseRef) == ""
  528.             CreateRegKey $(KeyService) {"UseRef",$(NoTitle),GenericClass} "" $(MAXIMUM_ALLOWED) "" KeyUseRef
  529.         endif
  530.         ifstr(i) $(KeyUseRef) != ""
  531.             GetRegValue $(KeyUseRef),$(KeyName), KeyInfo
  532.             ifstr(i) $(RegLastError) == $(!REG_ERROR_SUCCESS)
  533.                 set Find = TRUE
  534.             endif
  535.             CloseRegKey $(KeyUseRef)
  536.         endif
  537.         CloseRegKey $(KeyService)
  538.     else
  539.     endif
  540.     return $(Find)
  541. [Source Media Descriptions]
  542.     1 = "Windows NT Server CD-ROM", TAGFILE = cdrom_s.40
  543. [Signature]
  544.     FileType = MICROSOFT_FILE
  545. [GetSignature]
  546.     read-syms Signature
  547.     return $(FileType)
  548. [ProductType]
  549. STF_PRODUCT  = LanmanNT
  550. STF_PLATFORM = I386
  551. [Files-Inf]
  552. 2,    oemsetup.inf,     SIZE=1000,    RENAME=$(!UG_Filename)
  553. [Files-IPRIP]
  554. 1,IPRIP.DLL , SIZE=999
  555. 1,ROUTER.EXE , SIZE=999
  556. 1,TRACE.DLL , SIZE=999
  557. [LanguagesSupported]
  558.     ENG
  559. [OptionsTextENG]
  560.     IPRIP = "RIP for Internet Protocol"
  561. [FileConstantsENG]
  562. ProCaption   = "Windows NT Setup"
  563. ProCancel    = "Cancel"
  564. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  565.                "Are you sure you want to cancel copying files?"
  566. ProCancelCap = "Network Setup Message"
  567. ProText1     = "Copying:"
  568. ProText2     = "To:"
  569. ProductIPRIPTitle       = "RIP for Internet Protocol"
  570. ProductIPRIPDescription = "Routing Information Protocol. Enables a router to exchange routing information with other routers on an IP LAN."
  571. ProductIPRIPDisplayName = "RIP for Internet Protocol"
  572. [VerExistsENG]
  573.     Ver   = " version "
  574.     Text1 = " is already installed."
  575. [InUseENG]
  576. Error = "RIP for Internet Protocol is currently in use by other network protocols. Please remove all related services first."
  577. [DialogConstantsENG]
  578. Help        = "&Help"
  579. Exit        = "Cancel"
  580. OK          = "OK"
  581. HelpContext = ""
  582. Continue    = "Continue"
  583. Cancel      = "Cancel"
  584.